#ifndef __COMPILER_H__
#define __COMPILER_H__
#include <htc.h>

#include <stdint.h>


#ifndef FALSE
#define FALSE 0
#endif
#ifndef TRUE
#define TRUE 1
#endif

# define MCU_MEM_ALIGN_SIZE     sizeof(int)

# define MCU_MEM_LITTLE_ENDIAN  TRUE


#ifndef NULL
    # define NULL               (0x00)
#endif

#define MAX(__A,__B)  (((__A) > (__B)) ? (__A) : (__B))
#define MIN(__A,__B)  (((__A) < (__B)) ? (__A) : (__B))

#define UBOUND(__ARRAY) (sizeof(__ARRAY)/sizeof(__ARRAY[0]))

#define ABS(__NUM)    (((__NUM) < 0)?(-(__NUM)):(__NUM))

#ifndef BIT
#define BIT(__N)		((uint16_t)1 << (__N))
#endif
#ifndef _BV
#define _BV(__N)        ((uint16_t)1 << (__N))
#endif

# define TYPE_CONVERTER(__ADDR,__TYPE)     (*((__TYPE *)(__ADDR)))



#endif
